from appium import webdriver
from time import sleep
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

import os
import time

class Base():
    def __init__(self):
        os.system('adb root')
        cap = {
            "platformName": "Android",
            "deviceName": "emulator-5554",
            "noReset": True,
            "appPackage": "com.xiachufang",
            "appActivity": "com.xiachufang.activity.home.HomeActivity"
        }
        self.drive = webdriver.Remote('http/127.0.0.1:4327/wd/hub',cap)
        self.drive.implicitly_wait(25)
        sleep(15)

    def find_ele(self,loc):
        if type(loc) == str:
            return self.drive.find_element_by_android_uiautomator(loc)
        else:
            return self.drive.find_element(*loc)

    def find_wait_ele(self,loc):
        return WebDriverWait(self.drive,15).until(EC.presence_of_element_located(loc))


    def get_key_value(self,loc,key):
        ele = self.find_ele(loc)
        return ele.get_attribute(key)

    def jieping(self,filename):

         t = time.strftime('%Y%m%D%H%M%S',time.localtime())
         self.drive.save_screenshot(t+filename)

    def qingqiao(self,x,y):
        self.drive.tap([(x,y)],500)

    def huadon(self,x,y,x2,y2):
        self.drive.swipe(x,y,x2,y2,500)

    def tuichu(self):

        self.drive.quit()